今天想分享同事對於分散式系統的想法
聽完我也覺得深有同感,所以想把他記錄下來,也跟大家分享
在電腦的世界中,會覺得分散式很困難,是因為工程師們已經將很多分散式的問題在更底層的軟體中解決了
如果換個角度來想,我們現實的生活的所有流程,就是一個巨大的分散式系統
公司內部交辦工作,有可能你跟對方交辦了,不代表他就有辦法做到
有可能
在跟朋友約吃飯,你跟他說10點吃飯
也有可能出現
這一切的一切在現實生活中都是如此的合理,也延伸出了各種不同的管理手法
而且重點是,就算有這麼多方法,也不是有辦法一招打天下
要依據各種現實狀況來採用不同的手法
而之前介紹到的DDIA之所以會這麼厚還只是淺談
不是因為裡面內容不夠充實,而是分散式系統就是一個這麼複雜的內容
會有各式各樣的事情原本硬體層或是作業系統層已經幫我們解決的,變成軟體開發人員要自己處理這些邏輯而已
而這些分散式系統的解決方案,很多也都是現實生活中常見的管理方式(但不一定互相通用,因為主角是人或是機器
比如最常見的
如果我想要知道一台機器現在處理一個資料的進度,我們可以(當然還有其他方式)
在現實生活中,如果跟別人有約,也是一樣的狀況(但對方會很煩)
最後我的感想是
在寫這些分散式系統的案例跟難點時,一開始會覺得怎麼這麼煩
但想到好像現實生活中也是如此,學這些知識好像就沒那麼痛苦了